import Fetch from '../../http/Fetch.js'
// 占卜池
// 观察者IndexObserver
// 每次入口页面刷新时 如果处于凌晨则通知update
// 单例模式 只有一个占卜池
class Pool {
    /**
     * Constructor
     * 构造函数
     *
     * @return <+Return+>
     */
    constructor() {
        if (typeof Pool.instance === 'object') {
            return Pool.instance
        }
        this.init()
        Pool.instance = this
        return this
    }

    /**
     * Init
     * 初始化
     *
     * @return <+Return+>
     */
    init(list) {
        this.list = typeof list === undefined ? {} : list
    }

    /**
     * Update TODO
     * 观察到需要更新
     *
     * @return void
     */
    async update() {
        // console.log('before fetch')
        let list = await this.fetchPredictPool()
        this.list = list
        // console.log('after fetch')
    }

    /**
     * FetchPredictPool TODO
     * 获取预测池
     *
     * @return mix
     */
    async fetchPredictPool() {
        // return await new Fetch().get('/predictPool', {})
        // TODO 待删除
        return await new Fetch().get('/predictPool', {})
    }
}

export default Pool
